Jerry's Log

Mobile AP & Modem

contents

1. 하드웨어 아키텍처 (The Hardware Architecture)

퀄컴 스냅드래곤 칩(흔히 말하는 "모바일 AP") 내부에는 크게 두 가지 세상이 존재합니다.

여러분이 유심(USIM) 카드를 꽂으면, 그 유심은 물리적으로 이 베이스밴드 프로세서(모뎀) 와 연결됩니다.


2. 중계기(Repeater)의 역할

먼저 중계기의 정체를 명확히 해야 합니다.

가정이나 지하에 설치된 일반적인 이동통신사 중계기는 보통 아날로그 RF 증폭기 (1계층 장비) 입니다.


3. 단계별 작동 과정: 전원 켜짐부터 연결까지

휴대폰 전원을 켰을 때 퀄컴 모뎀 내부에서 일어나는 정확한 순서(Call Flow)는 다음과 같습니다.

1단계: 물리적 신호 탐색 (1계층)

  1. 전원 On: 퀄컴 모뎀이 깨어납니다.
  2. 주파수 스캔: 하드웨어가 지원하는 모든 라디오 주파수(LTE 밴드 1, 3, 5 등)를 스캔합니다.
  3. 동기화 신호(PSS/SSS) 감지: 기지국들이 방송하는 동기화 신호를 찾습니다.
  4. 선택: 가장 신호가 센 곳을 찾습니다. 만약 중계기가 근처에 있다면 그 신호가 가장 강력할 것입니다. 모뎀은 이 주파수에 고정(Lock)합니다.

2단계: 유심(USIM) 읽기 (신원 확인)

  1. 모뎀이 USIM 카드 핀에 전원을 공급합니다.
  2. 모뎀은 유심에서 IMSI(국제 모바일 가입자 식별 번호)를 읽어옵니다. 이는 오직 유심에만 저장된 고유 ID입니다.
    • 참고: 안드로이드 OS(AP)가 하는 일이 아닙니다. 보안을 위해 모뎀이 직접 수행합니다.

3단계: RRC 연결 (3계층 - "여보세요")

  1. 모뎀이 공중으로 RRC Connection Request 메시지를 보냅니다.
  2. 경로: 모뎀 안테나 $\rightarrow$ 중계기(증폭) $\rightarrow$ 기지국(eNodeB).
  3. 기지국이 응답합니다: "그래, 신호 받았다. 우리끼리 대화할 채널을 하나 줄게."

4단계: 인증 (Authentication - 핵심 보안 절차)

이 단계에서 유심이 실제로 사용됩니다. 네트워크는 당신이 진짜 가입자인지 증명하라고 요구하고, 당신은 네트워크가 가짜 기지국이 아닌지 확인해야 합니다.

  1. 도전(Challenge): 통신사의 코어 네트워크가 모뎀에게 무작위 숫자(난수 A)를 보냅니다.
  2. 계산: 퀄컴 모뎀은 이 숫자(A)를 USIM 카드 안으로 밀어 넣습니다.
  3. 비밀키($K_i$): 유심 내부에는 절대로 밖으로 유출되지 않는 비밀키($K_i$)가 들어 있습니다. 유심 칩 내부에서 자체적으로 계산을 수행합니다: 결과값 = 연산(난수 A + 비밀키).
  4. 응답(Response): 유심은 결과값만 모뎀에게 뱉어내고, 모뎀은 이를 네트워크로 전송합니다.
  5. 검증: 네트워크가 가진 정답과 유심이 계산한 값이 일치하면 인증이 완료됩니다.

5단계: 부착(Attach) 및 IP 할당

  1. 인증이 끝나면 모뎀은 Attach Request(망 접속 요청)를 보냅니다.
  2. 네트워크는 이 기기를 위한 터널(Bearer)을 생성합니다.
  3. 네트워크가 모뎀에게 IP 주소를 할당합니다.
  4. 퀄컴 모뎀은 이제 AP(안드로이드)에게 보고합니다: "연결되었습니다. 여기 네트워크 인터페이스(예: rmnet_data0)를 쓰세요."

4. 데이터 흐름 (실제 작동 단계)

연결된 후, 여러분이 웹 서핑을 할 때 데이터 패킷은 다음과 같이 이동합니다.

  1. 앱(App): 웹 브라우저가 요청을 보내면 AP(CPU)가 IP 패킷을 생성합니다.
  2. 드라이버: AP는 이 패킷을 퀄컴 모뎀 드라이버로 넘깁니다.
  3. 모뎀 처리:
    • 모뎀은 IP 패킷을 암호화합니다 (PDCP 계층).
    • 전송하기 좋게 잘게 쪼갭니다 (RLC 계층).
    • 오류 정정 코드를 입힙니다 (MAC/PHY 계층).
  4. 모뎀 전송: 모뎀은 이 0과 1의 비트들을 아날로그 전파(Radio Waves) 로 변환하여 안테나로 쏘아 보냅니다.
  5. 중계기(Repeater)의 동작: 중계기는 이 미약한 전파를 잡아서, 순식간에 전력을 증폭시킨 뒤 기지국을 향해 다시 쏘아줍니다.
  6. 기지국(Tower)의 동작: 기지국은 전파를 받아 디지털로 변환한 뒤, 광케이블을 통해 통신사 코어 네트워크(EPC/5GC)를 거쳐 인터넷으로 내보냅니다.

요약 (개발자 관점)


중계기 네트워크와 모뎀 네트워크 간의 통신을 원한다면

1부: 다운링크(Downlink) 상세 분석 (기지국이 나에게 말하는 법)

다운링크는 기지국(Tower)에서 내 기기(UE)로 데이터가 흘러오는 것을 말합니다. 이것은 단순한 데이터의 흐름이 아니라, 고도로 정교하게 짜인 "테트리스" 게임과 같습니다.

1. 기술적 핵심: OFDMA ("격자판")

현대의 4G LTE나 5G 네트워크에서 공중의 전파는 하나의 큰 파이프가 아닙니다. 시간(Time)주파수(Frequency) 로 잘게 쪼개진 격자판입니다.

다운링크 처리 과정:

  1. 스케줄러 (뇌): 기지국 내부의 컴퓨터는 절대적인 "독재자"입니다. 매 1밀리초마다 모든 사용자(나, 이웃, 지나가는 차 등)를 감시합니다.
  2. 할당 (Allocation): 사용자의 필요량과 신호 품질에 따라 특정 "자원 블록"을 지정해 줍니다.
    • 예시: "사용자 A(당신), 넷플릭스를 보고 있으니 블록 1번부터 10번까지 써. 사용자 B, 문자 왔으니 블록 11번만 써."
  3. 브로드캐스팅: 기지국은 이 모든 데이터를 한 번에 공중에 쏘아 보냅니다.
  4. 필터링: 당신의 모뎀은 공중의 모든 신호를 듣지만, 자신의 ID(C-RNTI)에 할당된 블록만 해독하고 나머지는 무시합니다.

2. 변조 (Modulation - 신호 강도가 중요한 이유)

하나의 자원 블록에 얼마나 많은 데이터를 담을 수 있을까요? 그것은 신호 품질(SINR)에 달렸습니다.


2부: 네트워크 시나리오 분석

"중계기를 통해 연결된 기기(A)가, 같은 통신사 네트워크 내의 모뎀/핫스팟에 연결된 다른 기기(B)에 접속할 수 있나요?"

이것은 네트워크 토폴로지(구조)에 대한 오해에서 비롯되는 전형적인 질문입니다.

시나리오 상황:

  1. 기기 A (스마트폰): 중계기(Repeater) $\rightarrow$ 기지국에 무선 연결됨.
  2. 기기 B (노트북): LTE 모뎀(또는 핫스팟) $\rightarrow$ 기지국에 유선/Wi-Fi로 연결됨.

둘 다 동일한 통신사(예: SKT/KT/LGU+)를 사용하고 있으므로 물리적으로는 같은 통신사 망에 있습니다.

정답:

아니요, 서로 직접 통신(접속)할 수 없습니다.

그 이유를 3가지 장벽으로 상세히 설명해 드립니다.

장벽 1: 중계기는 1계층, 모뎀은 3계층

기기 A는 통신사 망이라는 거대한 바다에 떠 있고, 기기 B는 모뎀이라는 잠수함(NAT) 안에 숨어 있습니다.

장벽 2: 통신사급 NAT (CGNAT) 및 클라이언트 격리

통신사가 기기 A와 모뎀에게 주는 IP(10.x.x.x 등)는 공인 IP가 아닌 사설 IP입니다.

장벽 3: 이중 NAT 문제 (Double NAT)

설령 통신사가 A와 모뎀 간의 통신을 허용해 준다고 가정하더라도 문제입니다.

  1. 기기 A가 모뎀으로 패킷을 보냅니다.
  2. 모뎀이 받습니다. 하지만 모뎀은 기본적으로 방화벽 역할을 합니다. 외부(WAN)에서 들어오는 요청 중, 내부에서 먼저 요청하지 않은 트래픽은 모두 차단(Drop) 합니다.
  3. 모뎀에 포트 포워딩(Port Forwarding) 을 설정하고 공인 IP를 쓰지 않는 한, 접속은 불가능합니다.

예외: 통신이 가능한 유일한 경우

기기 A와 기기 B가 통신하려면 반드시 동일한 LAN(로컬 네트워크) 안에 있어야 합니다.

요약 및 해결책

기기 A가 중계기의 신호를 잡고 있고, 기기 B는 별도의 LTE 모뎀 뒤에 숨어 있다면, 서로는 절대 대화할 수 없습니다. 통신사의 보안 정책(CGNAT/격리) 때문입니다.

만약 꼭 통신해야 한다면:

두 기기에 Tailscale, ZeroTier, 또는 VPN 같은 가상 네트워크 소프트웨어를 설치해야 합니다. 이렇게 하면 통신사의 장벽을 뚫고 논리적으로 같은 방(LAN)에 있는 것처럼 연결해 줍니다.

references